CentOS7 + MySQL8

1 卸载MariaDB

使用yum安装时会自动替换。

1
2
rpm -qa | grep mariadb
sudo rpm -e --nodeps mariadb-libs-5.5.64-1.el7.x86_64

2 MySQL单机部署

1
2
3
4
5
6
7
8
9
10
11
12
13
# 获取当前系统版本,用于选择rpm
cat /etc/redhat-release
# 选择el7
# 文件名称查看http://dev.mysql.com/downloads/repo/yum/
wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm
# 安装源
sudo yum localinstall mysql80-community-release-el7-3.noarch.rpm
# 检查安装
yum repolist enabled | grep "mysql.*-community.*"
# 修改安装版本,通过enabled属性
# vi /etc/yum.repos.d/mysql-community.repo
# 安装
sudo yum install mysql-community-server

集群部署详见MySQL™ Cluster Manager 1.4.8 User Manual

3 MySQL配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
# 启动
systemctl start mysqld
# 或者
service mysqld start
creat
# 查看状态
systemctl status mysqld
# 或者
service mysqld status

# 设置开机启动
systemctl enable mysqld
systemctl daemon-reload

# 查看默认密码
grep 'temporary password' /var/log/mysqld.log
# 本地客户端登录
mysql -uroot -p
# 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'p1iAH&qJ';
# 或者
set password for 'root'@'localhost'=password('p1iAH&qJ');
# 查看密码策略,需要先修改密码。详见附录
show variables like '%password%';

# 添加远程登录用户
# 默认只允许root用户本地登录
# 切换数据库
use mysql;
# 查看用户访问来源与用户名
select host, user from user;
# 授权root用户远程访问权限
update user set host='%' where user ='root';
# 或者(非首次授权)
GRANT ALL ON *.* TO 'root'@'%';
# 生效
flush privileges;
1
2
3
4
5
6
7
8
9
10
11
12
13
validate_password_policy:密码策略,默认为MEDIUM策略

validate_password_dictionary_file:密码策略文件,策略为STRONG才需要

validate_password_length:密码最少长度

validate_password_mixed_case_count:大小写字符长度,至少1个

validate_password_number_count :数字至少1个

validate_password_special_char_count:特殊字符至少1个

上述参数是默认策略MEDIUM的密码检查规则。

参考资料

CentOS7安装mysql8.0.12

mysql添加远程用户并授权